Modern computing environments that support execution of virtual machines running in computer systems can employ disaster recovery management solutions for disaster protection. In a typical disaster recovery management scheme, storage units associated with a group of virtual machines executing on hosts at a production site are replicated to a recovery site. In case of failure of at the production site, the virtual machines can be failed over to hosts at the recovery site. In the failover process, replicated storage units can be mapped to the appropriate hosts. That is, the failover process must maintain a consistent topology between hosts and storage units from the production site to the recovery site. Otherwise, when the virtual machines are brought online at the recovery site, some virtual machines will not have access to the same storage units as at the production site, causing degradation or failure of the virtual machines.
One technique for recreating the host-storage unit topology at the recovery site is to mount every recovered storage unit on every host at the recovery site. The hosts, however, can have practical limits on the number of mounted storage units. The number of storage units under protection in some environments cart easily exceed the limit on the allowed number of mounted storage units. Moreover, mounting every storage unit on every host at the recovery site is inefficient and can thwart any logical division of hosts and storage units established by administrators at the production site. Further, mapping storage units at the recovery site in an identical fashion to the protected site is often impractical. The protected and recovery sites can have different capacities (e.g., the recovery site often has a smaller capacity than the protected site). Thus, a one-to-one match between a mapping of storage units and hosts at the protected site and a mapping of storage units and hosts at the recovery site is not always possible.